package com.youkeda.yunmusic.web.control;

import com.youkeda.yunmusic.web.model.Comment;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;

import java.util.List;

@Controller
public class CommentControl {
    @Autowired
    private CommentPostControl commentPostControl;

    @RequestMapping(value = "/comments")
    public String comments(ModelMap modelMap) {
        System.out.println("运行CommentControl的comments函数  1");

        List<Comment> comments=commentPostControl.getComments("557581476");
        //1.往前台传数据，可以传对象，可以传List，通过el表达式 ${}可以获取到，
        //类似于request.setAttribute("sts",sts)效果一样。
        modelMap.addAttribute("comments",comments);
        return "comments";
    }


}
/*
* ModelMap对象主要用于传递控制方法处理数据到结果页面，也就是说我们把结果页面上需要的数据放到ModelMap对象中
* 通过以下方法向页面传递参数：
addAttribute(String key,Object value);
* ModelMap的实例是由bboss mvc框架自动创建并作为控制器方法参数传入，用户无需自己创建。
public String xxxxmethod(String someparam,ModelMap model) 
{ 
//省略方法处理逻辑若干 
//将数据放置到ModelMap对象model中,第二个参数可以是任何java类型 
model.addAttribute("key",someparam); 
...... 
//返回跳转地址 
return "path:handleok"; 
} */
/*
@Controller：处理http请求的

@RestController：Spring4之后新加的注解，原来返回json需要@ResponseBody配合@Controller

@RequestMapping：配置url映射

           @RequestMapping("/hello")放在类前面用于给整个类设置映射。

           @RequestMapping(value = {"/hello","/hi"},method = RequestMethod.GET) ，放在类中，这样通过hello和hi都可以访问。

@PathVariable：获取URL中的数据，比如

            @RequestMapping(value ="/XXX/{id}",method = RequestMethod.GET)

            public String XXX(@PathVariable("id") Integer id){

                       return "id:"+id;

             } 

@RequestParam：获取请求参数的值

            public String XXX(@PathVariable("id") Integer id){

                       return "id:"+id;

             } 

   

@GetMapping：组合注解,与@RequestMapping功能类似。

             @RequestMapping(value ="/XXX")
 */
/*
在Spring初始化bean的时候，就把所有的加了@Controller/@RequestMapping的类里面的加了
@RequestMapping的方法放进了map中，当http请求来临时，直接去map中迅速拿到对应信息。
*/